/* -----------------------------------------------------------------------
 *
 * Converted from Part 7: Message Exchange (2009)
 * Annex E Command Dictionary, E.1 REGISTRY OF DICOM COMMAND ELEMENTS
 *
 */

typedef enum {
	C_STORE_RQ 	= 0x0001,
	C_STORE_RSP 	= 0x8001,
	C_GET_RQ 	= 0x0010,
	C_GET_RSP 	= 0x8010,
	C_FIND_RQ 	= 0x0020,
	C_FIND_RSP 	= 0x8020,
	C_MOVE_RQ 	= 0x0021,
	C_MOVE_RSP 	= 0x8021,
	C_ECHO_RQ 	= 0x0030,
	C_ECHO_RSP 	= 0x8030,
	N_EVENT_REPORT_RQ 	= 0x0100,
	N_EVENT_REPORT_RSP 	= 0x8100,
	N_GET_RQ 	= 0x0110,
	N_GET_RSP 	= 0x8110,
	N_SET_RQ 	= 0x0120,
	N_SET_RSP 	= 0x8120,
	N_ACTION_RQ 	= 0x0130,
	N_ACTION_RSP 	= 0x8130,
	N_CREATE_RQ 	= 0x0140,
	N_CREATE_RSP 	= 0x8140,
	N_DELETE_RQ 	= 0x0150,
	N_DELETE_RSP 	= 0x8150,
	C_CANCEL_RQ 	= 0x0FFF,
} commandtype;


/* -----------------------------------------------------------------------
 *
 * Converted from DICOM Part 6: Data Dictionary (2009)
 *
 * Python codelet that converts uid name into 'uid variable name'.
 *
    uid = uid_name.upper().replace(' & ', 'AND')
    uid = re.sub('['+re.escape(',-@/()')+']', ' ', uid)
    uid = uid.split(':')[0]
    uid = uid.split('[')[0]
    uid = '_'.join(uid.split())
    uid = 'UID_'+uid
    if 'RETIRED' in uid: uid = None
 */

typedef enum {
	UID_UNKNOWN = 0,
	UID_IMPLICIT_VR_LITTLE_ENDIAN,
	UID_EXPLICIT_VR_LITTLE_ENDIAN,
	UID_DEFLATED_EXPLICIT_VR_LITTLE_ENDIAN,
	UID_EXPLICIT_VR_BIG_ENDIAN,
	UID_JPEG_BASELINE_PROCESS_1,
	UID_JPEG_EXTENDED_PROCESS_2AND4,
	UID_JPEG_LOSSLESS_NON_HIERARCHICAL_PROCESS_14,
	UID_JPEG_LOSSLESS_NON_HIERARCHICAL_FIRST_ORDER_PREDICTION_PROCESS_14,
	UID_JPEG_LS_LOSSLESS_IMAGE_COMPRESSION,
	UID_JPEG_LS_LOSSY_NEAR_LOSSLESS_IMAGE_COMPRESSION,
	UID_JPEG_2000_IMAGE_COMPRESSION_LOSSLESS_ONLY,
	UID_JPEG_2000_IMAGE_COMPRESSION,
	UID_JPEG_2000_PART_2_MULTI_COMPONENT_IMAGE_COMPRESSION_LOSSLESS_ONLY,
	UID_JPEG_2000_PART_2_MULTI_COMPONENT_IMAGE_COMPRESSION,
	UID_JPIP_REFERENCED,
	UID_JPIP_REFERENCED_DEFLATE,
	UID_MPEG2_MAIN_PROFILE_MAIN_LEVEL,
	UID_MPEG2_MAIN_PROFILE_HIGH_LEVEL,
	UID_RLE_LOSSLESS,
	UID_RFC_2557_MIME_ENCAPSULATION,
	UID_XML_ENCODING,
	UID_COLOR_PALETTE_STORAGE,
	UID_VERIFICATION_SOP_CLASS,
	UID_MEDIA_STORAGE_DIRECTORY_STORAGE,
	UID_STORAGE_COMMITMENT_PUSH_MODEL_SOP_CLASS,
	UID_PROCEDURAL_EVENT_LOGGING_SOP_CLASS,
	UID_SUBSTANCE_ADMINISTRATION_LOGGING_SOP_CLASS,
	UID_MODALITY_PERFORMED_PROCEDURE_STEP_SOP_CLASS,
	UID_MODALITY_PERFORMED_PROCEDURE_STEP_RETRIEVE_SOP_CLASS,
	UID_MODALITY_PERFORMED_PROCEDURE_STEP_NOTIFICATION_SOP_CLASS,
	UID_BASIC_FILM_SESSION_SOP_CLASS,
	UID_BASIC_FILM_BOX_SOP_CLASS,
	UID_BASIC_GRAYSCALE_IMAGE_BOX_SOP_CLASS,
	UID_BASIC_COLOR_IMAGE_BOX_SOP_CLASS,
	UID_PRINT_JOB_SOP_CLASS,
	UID_BASIC_ANNOTATION_BOX_SOP_CLASS,
	UID_PRINTER_SOP_CLASS,
	UID_PRINTER_CONFIGURATION_RETRIEVAL_SOP_CLASS,
	UID_VOI_LUT_BOX_SOP_CLASS,
	UID_PRESENTATION_LUT_SOP_CLASS,
	UID_MEDIA_CREATION_MANAGEMENT_SOP_CLASS_UID,
	UID_COMPUTED_RADIOGRAPHY_IMAGE_STORAGE,
	UID_DIGITAL_X_RAY_IMAGE_STORAGE_FOR_PRESENTATION,
	UID_DIGITAL_X_RAY_IMAGE_STORAGE_FOR_PROCESSING,
	UID_DIGITAL_MAMMOGRAPHY_X_RAY_IMAGE_STORAGE_FOR_PRESENTATION,
	UID_DIGITAL_MAMMOGRAPHY_X_RAY_IMAGE_STORAGE_FOR_PROCESSING,
	UID_DIGITAL_INTRA_ORAL_X_RAY_IMAGE_STORAGE_FOR_PRESENTATION,
	UID_DIGITAL_INTRA_ORAL_X_RAY_IMAGE_STORAGE_FOR_PROCESSING,
	UID_CT_IMAGE_STORAGE,
	UID_ENHANCED_CT_IMAGE_STORAGE,
	UID_ULTRASOUND_MULTI_FRAME_IMAGE_STORAGE,
	UID_MR_IMAGE_STORAGE,
	UID_ENHANCED_MR_IMAGE_STORAGE,
	UID_MR_SPECTROSCOPY_STORAGE,
	UID_ENHANCED_MR_COLOR_IMAGE_STORAGE,
	UID_ULTRASOUND_IMAGE_STORAGE,
	UID_ENHANCED_US_VOLUME_STORAGE,
	UID_SECONDARY_CAPTURE_IMAGE_STORAGE,
	UID_MULTI_FRAME_SINGLE_BIT_SECONDARY_CAPTURE_IMAGE_STORAGE,
	UID_MULTI_FRAME_GRAYSCALE_BYTE_SECONDARY_CAPTURE_IMAGE_STORAGE,
	UID_MULTI_FRAME_GRAYSCALE_WORD_SECONDARY_CAPTURE_IMAGE_STORAGE,
	UID_MULTI_FRAME_TRUE_COLOR_SECONDARY_CAPTURE_IMAGE_STORAGE,
	UID_12_LEAD_ECG_WAVEFORM_STORAGE,
	UID_GENERAL_ECG_WAVEFORM_STORAGE,
	UID_AMBULATORY_ECG_WAVEFORM_STORAGE,
	UID_HEMODYNAMIC_WAVEFORM_STORAGE,
	UID_CARDIAC_ELECTROPHYSIOLOGY_WAVEFORM_STORAGE,
	UID_BASIC_VOICE_AUDIO_WAVEFORM_STORAGE,
	UID_GENERAL_AUDIO_WAVEFORM_STORAGE,
	UID_ARTERIAL_PULSE_WAVEFORM_STORAGE,
	UID_RESPIRATORY_WAVEFORM_STORAGE,
	UID_GRAYSCALE_SOFTCOPY_PRESENTATION_STATE_STORAGE_SOP_CLASS,
	UID_COLOR_SOFTCOPY_PRESENTATION_STATE_STORAGE_SOP_CLASS,
	UID_PSEUDO_COLOR_SOFTCOPY_PRESENTATION_STATE_STORAGE_SOP_CLASS,
	UID_BLENDING_SOFTCOPY_PRESENTATION_STATE_STORAGE_SOP_CLASS,
	UID_XA_XRF_GRAYSCALE_SOFTCOPY_PRESENTATION_STATE_STORAGE,
	UID_X_RAY_ANGIOGRAPHIC_IMAGE_STORAGE,
	UID_ENHANCED_XA_IMAGE_STORAGE,
	UID_X_RAY_RADIOFLUOROSCOPIC_IMAGE_STORAGE,
	UID_ENHANCED_XRF_IMAGE_STORAGE,
	UID_X_RAY_3D_ANGIOGRAPHIC_IMAGE_STORAGE,
	UID_X_RAY_3D_CRANIOFACIAL_IMAGE_STORAGE,
	UID_BREAST_TOMOSYNTHESIS_IMAGE_STORAGE,
	UID_NUCLEAR_MEDICINE_IMAGE_STORAGE,
	UID_RAW_DATA_STORAGE,
	UID_SPATIAL_REGISTRATION_STORAGE,
	UID_SPATIAL_FIDUCIALS_STORAGE,
	UID_DEFORMABLE_SPATIAL_REGISTRATION_STORAGE,
	UID_SEGMENTATION_STORAGE,
	UID_SURFACE_SEGMENTATION_STORAGE,
	UID_REAL_WORLD_VALUE_MAPPING_STORAGE,
	UID_VL_ENDOSCOPIC_IMAGE_STORAGE,
	UID_VIDEO_ENDOSCOPIC_IMAGE_STORAGE,
	UID_VL_MICROSCOPIC_IMAGE_STORAGE,
	UID_VIDEO_MICROSCOPIC_IMAGE_STORAGE,
	UID_VL_SLIDE_COORDINATES_MICROSCOPIC_IMAGE_STORAGE,
	UID_VL_PHOTOGRAPHIC_IMAGE_STORAGE,
	UID_VIDEO_PHOTOGRAPHIC_IMAGE_STORAGE,
	UID_OPHTHALMIC_PHOTOGRAPHY_8_BIT_IMAGE_STORAGE,
	UID_OPHTHALMIC_PHOTOGRAPHY_16_BIT_IMAGE_STORAGE,
	UID_STEREOMETRIC_RELATIONSHIP_STORAGE,
	UID_OPHTHALMIC_TOMOGRAPHY_IMAGE_STORAGE,
	UID_LENSOMETRY_MEASUREMENTS_STORAGE,
	UID_AUTOREFRACTION_MEASUREMENTS_STORAGE,
	UID_KERATOMETRY_MEASUREMENTS_STORAGE,
	UID_SUBJECTIVE_REFRACTION_MEASUREMENTS_STORAGE,
	UID_VISUAL_ACUITY_MEASUREMENTS,
	UID_SPECTACLE_PRESCRIPTION_REPORTS_STORAGE,
	UID_MACULAR_GRID_THICKNESS_AND_VOLUME_REPORT_STORAGE,
	UID_BASIC_TEXT_SR_STORAGE,
	UID_ENHANCED_SR_STORAGE,
	UID_COMPREHENSIVE_SR_STORAGE,
	UID_PROCEDURE_LOG_STORAGE,
	UID_MAMMOGRAPHY_CAD_SR_STORAGE,
	UID_KEY_OBJECT_SELECTION_DOCUMENT_STORAGE,
	UID_CHEST_CAD_SR_STORAGE,
	UID_X_RAY_RADIATION_DOSE_SR_STORAGE,
	UID_COLON_CAD_SR_STORAGE,
	UID_ENCAPSULATED_PDF_STORAGE,
	UID_ENCAPSULATED_CDA_STORAGE,
	UID_POSITRON_EMISSION_TOMOGRAPHY_IMAGE_STORAGE,
	UID_ENHANCED_PET_IMAGE_STORAGE,
	UID_BASIC_STRUCTURED_DISPLAY_STORAGE,
	UID_RT_IMAGE_STORAGE,
	UID_RT_DOSE_STORAGE,
	UID_RT_STRUCTURE_SET_STORAGE,
	UID_RT_BEAMS_TREATMENT_RECORD_STORAGE,
	UID_RT_PLAN_STORAGE,
	UID_RT_BRACHY_TREATMENT_RECORD_STORAGE,
	UID_RT_TREATMENT_SUMMARY_RECORD_STORAGE,
	UID_RT_ION_PLAN_STORAGE,
	UID_RT_ION_BEAMS_TREATMENT_RECORD_STORAGE,
	UID_PATIENT_ROOT_QUERY_RETRIEVE_INFORMATION_MODEL_FIND,
	UID_PATIENT_ROOT_QUERY_RETRIEVE_INFORMATION_MODEL_MOVE,
	UID_PATIENT_ROOT_QUERY_RETRIEVE_INFORMATION_MODEL_GET,
	UID_STUDY_ROOT_QUERY_RETRIEVE_INFORMATION_MODEL_FIND,
	UID_STUDY_ROOT_QUERY_RETRIEVE_INFORMATION_MODEL_MOVE,
	UID_STUDY_ROOT_QUERY_RETRIEVE_INFORMATION_MODEL_GET,
	UID_COMPOSITE_INSTANCE_ROOT_RETRIEVE_MOVE,
	UID_COMPOSITE_INSTANCE_ROOT_RETRIEVE_GET,
	UID_COMPOSITE_INSTANCE_RETRIEVE_WITHOUT_BULK_DATA_GET,
	UID_MODALITY_WORKLIST_INFORMATION_MODEL_FIND,
	UID_GENERAL_PURPOSE_WORKLIST_INFORMATION_MODEL_FIND,
	UID_GENERAL_PURPOSE_SCHEDULED_PROCEDURE_STEP_SOP_CLASS,
	UID_GENERAL_PURPOSE_PERFORMED_PROCEDURE_STEP_SOP_CLASS,
	UID_INSTANCE_AVAILABILITY_NOTIFICATION_SOP_CLASS,
	UID_RT_BEAMS_DELIVERY_INSTRUCTION_STORAGE_SUPPLEMENT_74_FROZEN_DRAFT,
	UID_RT_CONVENTIONAL_MACHINE_VERIFICATION_SUPPLEMENT_74_FROZEN_DRAFT,
	UID_RT_ION_MACHINE_VERIFICATION_SUPPLEMENT_74_FROZEN_DRAFT,
	UID_UNIFIED_PROCEDURE_STEP_PUSH_SOP_CLASS,
	UID_UNIFIED_PROCEDURE_STEP_WATCH_SOP_CLASS,
	UID_UNIFIED_PROCEDURE_STEP_PULL_SOP_CLASS,
	UID_UNIFIED_PROCEDURE_STEP_EVENT_SOP_CLASS,
	UID_GENERAL_RELEVANT_PATIENT_INFORMATION_QUERY,
	UID_BREAST_IMAGING_RELEVANT_PATIENT_INFORMATION_QUERY,
	UID_CARDIAC_RELEVANT_PATIENT_INFORMATION_QUERY,
	UID_HANGING_PROTOCOL_STORAGE,
	UID_HANGING_PROTOCOL_INFORMATION_MODEL_FIND,
	UID_HANGING_PROTOCOL_INFORMATION_MODEL_MOVE,
	UID_HANGING_PROTOCOL_INFORMATION_MODEL_GET,
	UID_PRODUCT_CHARACTERISTICS_QUERY_SOP_CLASS,
	UID_SUBSTANCE_APPROVAL_QUERY_SOP_CLASS,
	UID_BASIC_GRAYSCALE_PRINT_MANAGEMENT_META_SOP_CLASS,
	UID_BASIC_COLOR_PRINT_MANAGEMENT_META_SOP_CLASS,
	UID_GENERAL_PURPOSE_WORKLIST_MANAGEMENT_META_SOP_CLASS,
	UID_COLOR_PALETTE_INFORMATION_MODEL_FIND,
	UID_COLOR_PALETTE_INFORMATION_MODEL_MOVE,
	UID_COLOR_PALETTE_INFORMATION_MODEL_GET,
	UID_DICOM_APPLICATION_CONTEXT_NAME,
	UID_DICOM_CONTROLLED_TERMINOLOGY,
	UID_DICOM_UID_REGISTRY,
	UID_STORAGE_SERVICE_CLASS,
	UID_UNIFIED_WORKLIST_AND_PROCEDURE_STEP_SERVICE_CLASS
} uidtype;